35 research outputs found
Predicting software performance in symmetric multi-core and multiprocessor Environments
With today\u27s rise of multi-core processors, concurrency becomes a ubiquitous challenge in software development.Performance prediction methods have to reflect the influence of multiprocessing environments on software performance in order to help software architects to find potential performance problems during early development phases. In this thesis, we address the influence of the operating system scheduler on software performance in symmetric multiprocessing environments
Lyophilization protects [FeFe]-hydrogenases against O2-induced H-cluster degradation
Nature has developed an impressive repertoire of metal-based enzymes that
perform complex chemical reactions under moderate conditions. Catalysts that
produce molecular hydrogen (H2) are particularly promising for renewable
energy applications. Unfortunately, natural and chemical H2-catalysts are
often irreversibly degraded by molecular oxygen (O2). Here we present a
straightforward procedure based on freeze-drying (lyophilization), that turns
[FeFe]-hydrogenases, which are excellent H2-producers, but typically extremely
O2-sensitive in solution, into enzymes that are fully resistant against O2.
Complete dryness protects and conserves both, the [FeFe]-hydrogenase proteins
and their inorganic active-site cofactor (H-cluster), when exposed to 100% O2
for days. The full H2-formation capacity is restored after solvation of the
lyophilized enzymes. However, even minimal moisturizing re-establishes
O2-sensitivity. The dry [FeFe]-hydrogenase material is superior also for
advanced spectroscopic investigations on the H-cluster reaction mechanism. Our
method provides a convenient way for long-term storage and impacts on
potential biotechnological hydrogen production applications of hydrogenase
enzymes
The Role of Models in Self-adaptive and Self-healing Systems
Self-healing and self-adaptive systems dynamically react on changes in the environment. They enable software systems to adjust to new conditions and work optimally even in unstable environments. However, such systems have to cope with an ever increasing complexity and size of software systems. In order to handle such systems, models are an efficient means for analysis, control, and documentation. Furthermore, hierarchically structured models can make self-healing and self-adaptation manageable. In this report, we discuss several questions that address the role of models in self-healing and self-adaptive systems. We outline today\u27s challenges and present different viewpoints on the application and benefit of models
Transformationen in der modellgetriebenen Software-Entwicklung
odellgetriebene Software-Entwicklung ist in den letzten Jahren
insbesondere unter Schlagworten wie MDA oder MDD zu einem Thema
von allgemeinem Interesse für die Software-Branche geworden.
Dabei ist ein Trend weg von der codezentrierten
Software-Entwicklung hin zum (Architektur-) Modell im
Mittelpunkt der Software-Entwicklung festzustellen.
Modellgetriebene Software-Entwicklung verspricht eine stetige
und automatisierte Synchronisation von Software-Modellen
verschiedenster Ebenen. Dies verspricht eine Verkürzung von
Entwicklungszyklen und mehr Produktivität. Primär wird nicht
mehr reiner Quellcode entwickelt, sondern Modelle und
Transformationen übernehmen als eine höhere Abstraktionsebene
die Rolle der Entwicklungssprache für Software-Entwickler.
Software-Architekturen lassen sich durch Modell beschreiben. Sie
sind weder auf eine Beschreibungssprache noch auf eine bestimmte
Domänen beschränkt. Im Zuge der Bemühungen modellgetriebener
Entwicklung lassen sich hier Entwicklungen hin zu
standardisierten Beschreibungssprachen wie UML aber auch
die Einführung von domänen-spezifischen Sprachen (DSL) erkennen.
Auf diese formalisierten Modelle lassen sich schließlich
Transformationen anwenden. Diese können entweder zu einem
weiteren Modell ("Model-to-Model") oder einer
textuellen Repräsentation ("Model-to-Text") erfolgen.
Transformationen kapseln dabei wiederholt anwendbares
Entwurfs-Wissen ("Muster") in parametrisierten Schablonen. Für
die Definition der Transformationen können Sprachen wie
beispielsweise QVT verwendet werden. Mit AndoMDA und
openArchitectureWare existieren Werkzeuge, welche die Entwickler
bei der Ausführung von Transformationen unterstützen